-
Notifications
You must be signed in to change notification settings - Fork 13
Stubserver re-write in Rust #679
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
b2101dd
to
eb9138a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a comprehensive rewrite of the stub server in Rust, replacing the existing Python implementation. The rewrite provides improved performance through reduced startup times and polling intervals for the Rust implementation, while maintaining backward compatibility with the existing test infrastructure.
- Adds a complete Rust implementation of the bolt stub server (
boltstub_rs/
) - Adds Docker build support for including the Rust binary in test environments
- Implements conditional logic to use either Python or Rust stub servers based on environment variables
Reviewed Changes
Copilot reviewed 55 out of 57 changed files in this pull request and generated 4 comments.
Show a summary per file
File | Description |
---|---|
tests/stub/shared.py | Adds Rust stub server support with conditional execution logic and updated parsing functions |
tests/stub/routing/scripts/v3/router_adb_then_bdb.script | Adds missing ELSE clause to handle edge cases in routing logic |
tests/stub/driver_parameters/test_client_agent_strings.py | Updates HELLO message parsing to use new as_parsed_dict helper |
tests/stub/driver_parameters/test_bookmark_manager.py | Updates BEGIN message parsing to use new as_parsed_dict helper |
runner_image/Dockerfile | Adds multi-stage build to compile and include Rust boltstub binary |
runner.py | Adds build context support for including Rust source in Docker builds |
docker.py | Extends build function to support build contexts for multi-stage Docker builds |
boltstub_rs/* | Complete Rust implementation including WebSocket support, PackStream serialization, Bolt protocol handling, and some test coverage |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
No description provided.